#ifndef CHANNEL_H
#define CHANNEL_H

#include "base.h"

class ChannelPort : public JObject
{
public:
    ChannelPort(JObject *parent = nullptr) :
        JObject(parent)
    {
    }
};

class ChannelPortReceiver : public ChannelPort
{
public:
    ChannelPortReceiver(JObject *parent = nullptr) :
        ChannelPort(parent)
    {
    }
};

class ChannelPortSender : public ChannelPort
{
public:
    ChannelPortSender(JObject *parent = nullptr) :
        ChannelPort(parent)
    {
    }
};

class Channel : public JObject
{
private:
    // Disable all the constructors.
    Channel();
    Channel(const Channel &);
    Channel(Channel &&);
};

#endif // CHANNEL_H
